/* 颜色调色板 - 为二手交易平台设计的现代配色方案 */
:root {
  /* 基础颜色 */
  --vt-c-white: #ffffff;
  --vt-c-white-soft: #f8f9fa;
  --vt-c-white-mute: #f1f3f5;
  --vt-c-black: #181818;
  --vt-c-black-soft: #222222;
  --vt-c-black-mute: #282828;
  
  /* 主色调 - 绿色系，代表新鲜、环保、活力 */
  --vt-c-primary: #42b983;
  --vt-c-primary-light: #4fc08d;
  --vt-c-primary-dark: #3aa876;
  --vt-c-primary-gradient: linear-gradient(135deg, var(--vt-c-primary), var(--vt-c-secondary));
  
  /* 辅助色 */
  --vt-c-secondary: #35495e;
  --vt-c-secondary-light: #425a70;
  --vt-c-secondary-dark: #2c3e50;
  
  /* 功能色 */
  --vt-c-success: #00b894;
  --vt-c-success-light: #55efc4;
  --vt-c-success-dark: #00cec9;
  --vt-c-warning: #fdcb6e;
  --vt-c-warning-light: #ffeaa7;
  --vt-c-warning-dark: #f39c12;
  --vt-c-danger: #f44336;
  --vt-c-danger-light: #ff7675;
  --vt-c-danger-dark: #d63031;
  --vt-c-info: #0984e3;
  --vt-c-info-light: #74b9ff;
  --vt-c-info-dark: #0984e3;
  
  /* 文字颜色 */
  --vt-c-text-primary: #2d3436;
  --vt-c-text-secondary: #636e72;
  --vt-c-text-muted: #b2bec3;
  
  /* 边框颜色 */
  --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
  --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
  --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
  --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
}

/* 语义化颜色变量 */
:root {
  /* 背景 */
  --color-background: var(--vt-c-white);
  --color-background-soft: var(--vt-c-white-soft);
  --color-background-mute: var(--vt-c-white-mute);
  --color-background-light: #f9f9f9;
  --color-background-dark: #f1f1f1;
  
  /* 边框 */
  --color-border: #eaeaea;
  --color-border-light: #f0f0f0;
  --color-border-hover: var(--vt-c-divider-light-1);
  
  /* 文字 */
  --color-heading: var(--vt-c-text-primary);
  --color-text: var(--vt-c-text-primary);
  --color-text-secondary: var(--vt-c-text-secondary);
  --color-text-muted: var(--vt-c-text-muted);
  
  /* 主题色 */
  --color-primary: var(--vt-c-primary);
  --color-primary-light: var(--vt-c-primary-light);
  --color-primary-dark: var(--vt-c-primary-dark);
  --color-secondary: var(--vt-c-secondary);
  --color-secondary-light: var(--vt-c-secondary-light);
  --color-secondary-dark: var(--vt-c-secondary-dark);
  
  /* 功能色 */
  --color-success: var(--vt-c-success);
  --color-warning: var(--vt-c-warning);
  --color-danger: var(--vt-c-danger);
  --color-info: var(--vt-c-info);
  
  /* 间距 */
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-xxl: 3rem;
  
  /* 圆角 */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 9999px;
  
  /* 阴影 */
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  
  /* 过渡 */
  --transition-fast: 0.15s ease;
  --transition-normal: 0.3s ease;
  --transition-slow: 0.5s ease;
}

@media (prefers-color-scheme: dark) {
  :root {
    --color-background: var(--vt-c-black);
    --color-background-soft: var(--vt-c-black-soft);
    --color-background-mute: var(--vt-c-black-mute);

    --color-border: var(--vt-c-divider-dark-2);
    --color-border-hover: var(--vt-c-divider-dark-1);

    --color-heading: var(--vt-c-text-dark-1);
    --color-text: var(--vt-c-text-dark-2);
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  font-weight: normal;
}

body {
  min-height: 100vh;
  color: var(--color-text);
  background: var(--color-background);
  transition:
    color 0.5s,
    background-color 0.5s;
  line-height: 1.6;
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    'Segoe UI',
    Roboto,
    Oxygen,
    Ubuntu,
    Cantarell,
    'Fira Sans',
    'Droid Sans',
    'Helvetica Neue',
    sans-serif;
  font-size: 15px;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
